Interactive routing information between users

ABSTRACT

A method, autonomous system controller, and computer program product generate a first route for an autonomous vehicle to transport a first person from a first location to a destination. In response to determining that a second person satisfies trigger criteria comprising: (i) being at a second location that is within a proximity threshold to the first route; (ii) being associated with the first person; and (iii) being associated with the destination, an affordance is caused to be presented via respective user interface devices to at least one of the first and second persons that proposes that the autonomous vehicle transport both the first and second persons to the destination. In response to receiving acceptance, a second route is generated for the autonomous vehicle that comprises picking up the first person at the first location, picking up the second person at the second location, and transporting both persons to the destination.

BACKGROUND

The present application generally relates to autonomously drivenpassenger vehicles and more particularly relates to automatic routegeneration for taxi services provided by autonomously driven passengervehicles.

Significant development has occurred in geographic mapping andnavigation systems. Various routing algorithms have been devised fordetermining a route between a starting point and a destination thatdynamically achieve a fastest or shortest route, for example. Buildingupon this enabling navigation technology, mobile-based businessplatforms have been implemented that enable automated passenger andparcel taxi services. The business platform selects particular vehiclesand potential drivers based on routing proximity and availability. Thebusiness platform handles fare negotiations between driver and passengerin some instances. Other systems arrange delivery of food or othergoods.

While being effective, generally-known routing systems are constrainedto deliver point-to-point transportation in response to a user query.The process begins with the user who wishes to be a passenger or to havegoods delivered. The user provides pickup and delivery locations andarranges who or what is to be transported. The routing system maysuggest a location such as home or work based on a historical user data.However, this is a very limited number of locations to propose to a userdue to limits on direct knowledge of the user's own preferences orhabits.

SUMMARY

The following is a brief summary of subject matter that is described ingreater detail herein. This summary is not intended to be limiting as tothe scope of the claims. The present innovation is directed at least inpart to socializing routing of autonomous vehicle transportation basedon associations between potential passengers and their correspondingpreferences and destinations that are shared as a group.

In accordance with one aspect of the present innovation, a methodincludes generating a first route for an autonomous vehicle to transporta first person from a first location to a destination. The methodincludes determining whether a second person satisfies trigger criteriacomprising: (i) being at a second location that is within a proximitythreshold to the first route; (ii) being associated with the firstperson; and (iii) being associated with the destination. In response todetermining that the trigger criteria are satisfied, the method includescausing presentation of an affordance via a respective user interfacedevice to at least one of the first and second persons that proposesthat the autonomous vehicle transport both the first and second personsto the destination. In response to receiving acceptance of theaffordance from the at least one of the first and second persons via therespective user interface device, the method includes generating asecond route for the autonomous vehicle that comprises picking up thefirst person at the first location, picking up the second person at thesecond location, and transporting both the first and second persons tothe destination.

In one aspect of the present disclosure, an autonomous system controllerincludes a communication interface that is in communication with: (i) anautonomous vehicle; (ii) a first user interface device that is used by afirst person; (iii) and a second user interface device that is used by asecond person. The controller includes a routing system that is incommunication with the communication interface. The routing systemgenerates a first route for the autonomous vehicle to transport thefirst person from a first location to a destination. The routing systemdetermines whether the second person satisfies trigger criteriacomprising: (i) being at a second location that is within a proximitythreshold to the first route; (ii) being associated with the firstperson; and (iii) being associated with the destination. In response todetermining that the trigger criteria are satisfied, the routing systemcauses presentation of an affordance via the respective user interfacedevice to at least one of the first and second persons that proposesthat the autonomous vehicle transport both the first and second personsto the destination. In response to receiving acceptance of theaffordance from the at least one of the first and second persons via therespective user interface device, the routing system generates a secondroute for the autonomous vehicle that comprises picking up the firstperson at the first location, picking up the second person at the secondlocation, and transporting both the first and second persons to thedestination.

In one aspect according to the present disclosure, a computer programproduct includes program code on a computer readable storage devicethat, when executed by a processor associated with an electronic device,the program code enables the electronic device to provide thefunctionality of generating a first route for an autonomous vehicle totransport a first person from a first location to a destination. Theprogram code determines whether a second person satisfies triggercriteria comprising: (i) being at a second location that is within aproximity threshold to the first route; (ii) being associated with thefirst person; and (iii) being associated with the destination. Inresponse to determining that the trigger criteria are satisfied, theprogram code causes presentation of an affordance via a respective userinterface device to at least one of the first and second persons thatproposes that the autonomous vehicle transport both the first and secondpersons to the destination. In response to receiving acceptance of theaffordance from the at least one of the first and second persons via therespective user interface device, the program code generates a secondroute for the autonomous vehicle that comprises picking up the firstperson at the first location, picking up the second person at the secondlocation, and transporting both the first and second persons to thedestination.

The above summary presents a simplified summary in order to provide abasic understanding of some aspects of the systems and/or methodsdiscussed herein. This summary is not an extensive overview of thesystems and/or methods discussed herein. It is not intended to identifykey/critical elements or to delineate the scope of such systems and/ormethods. Its sole purpose is to present some concepts in a simplifiedform as a prelude to the more detailed description that is presentedlater.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a functional block diagram that illustrates an exemplaryautonomous vehicle system that facilitates socialized ride sharing,according to one or more embodiments;

FIG. 2 is a functional block diagram of an exemplary user interfacedevice used by a person to interact with the autonomous vehicle systemof FIG. 1, according to one or more embodiments;

FIG. 3 is a front view of an exemplary user interface of a userinterface device presenting an affordance to initiate or agree to a rideshare, according to one or more embodiments;

FIG. 4 is a top diagrammatic view illustrating a ride share scenariothat includes backtracking to include a second person, according to oneor more embodiments;

FIG. 5 is a top diagrammatic view illustrating a ride share scenariothat includes associating co-workers as an opportunity to reroute for aride share, according to one or more embodiments;

FIG. 6 is a top diagrammatic view illustrating a ride share scenariothat includes associating identified friends or social group members toafford an opportunity to reroute for a ride share, according to one ormore embodiments;

FIGS. 7A-B depict a flow diagram illustrating an exemplary methodologyfor facilitating a socialized ride share, according to one or moreembodiments; and

FIG. 8 illustrates an exemplary computing device, according to one ormore embodiments.

DETAILED DESCRIPTION

A method, autonomous system controller, and computer program productgenerate a first route for an autonomous vehicle to transport a firstperson from a first location to a destination. In response todetermining that a second person satisfies trigger criteria comprising:(i) being at a second location that is within a proximity threshold tothe first route; (ii) being associated with the first person; and (iii)being associated with the destination, an affordance is caused to bepresent via a respective user interface device to at least one of thefirst and second persons that proposes that the autonomous vehicletransport both the first and second persons to the destination. Inresponse to receiving acceptance, a second route is generated for theautonomous vehicle that comprises picking up the first person at thefirst location, picking up the second person at the second location, andtransporting both persons to the destination.

As set forth herein, like reference numerals are used to refer to likeelements throughout. In the following description, for purposes ofexplanation, numerous specific details are set forth in order to providea thorough understanding of one or more aspects. It may be evident,however, that such aspect(s) may be practiced without these specificdetails. In other instances, well-known structures and devices are shownin block diagram form in order to facilitate describing one or moreaspects. Further, it is to be understood that functionality that isdescribed as being carried out by certain system components may beperformed by multiple components. Similarly, for instance, a componentmay be configured to perform functionality that is described as beingcarried out by multiple components.

Moreover, the term “or” is intended to mean an inclusive “or” ratherthan an exclusive “or.” That is, unless specified otherwise, or clearfrom the context, the phrase “X employs A or B” is intended to mean anyof the natural inclusive permutations. That is, the phrase “X employs Aor B” is satisfied by any of the following instances: X employs A; Xemploys B; or X employs both A and B. In addition, the articles “a” and“an” as used in this application and the appended claims shouldgenerally be construed to mean “one or more” unless specified otherwiseor clear from the context to be directed to a singular form.

Further, as used herein, the terms “component” and “system” are intendedto encompass computer-readable data storage that is configured withcomputer-executable instructions that cause certain functionality to beperformed when executed by a processor. The computer-executableinstructions may include a routine, a function, or the like. It is alsoto be understood that a component or system may be localized on a singledevice or distributed across several devices. Further, as used herein,the term “exemplary” is intended to mean serving as an illustration orexample of something and is not intended to indicate a preference.

With reference now to FIG. 1, an exemplary autonomous vehicle system 100that provides routing for one or more autonomous vehicles 102 isillustrated. The autonomous vehicle 102 can navigate about roadwayswithout human conduction based upon sensor signals output by sensorsystems of the autonomous vehicle 102. The autonomous vehicle 102includes a plurality of sensor systems 104 a-n (a first sensor system104 a through an Nth sensor system 104 n). The sensor systems 104 a-nare of different types and are arranged about the autonomous vehicle102. For example, the first sensor system 104 a may be a lidar sensorsystem and the Nth sensor system 104 n may be a camera (image) system.Other exemplary sensor systems include radar sensor systems, GPS sensorsystems, sonar sensor systems, infrared sensor systems, and the like.

The autonomous vehicle 102 further includes several mechanical systemsthat are used to effectuate appropriate motion of the autonomous vehicle102. For instance, the mechanical systems can include but are notlimited to, a vehicle propulsion system 106, a braking system 108, and asteering system 110. The vehicle propulsion system 106 may be anelectric motor, an internal combustion engine, or a combination thereof.The braking system 108 can include an engine break, brake pads,actuators, and/or any other suitable componentry that is configured toassist in decelerating the autonomous vehicle 102. The steering system110 includes suitable componentry that is configured to control thedirection of movement of the autonomous vehicle 102.

The autonomous vehicle 102 additionally comprises a computing system 112that is in communication with the sensor systems 104 a-n and is furtherin communication with the vehicle propulsion system 106, the brakingsystem 108, and the steering system 110. The computing system 112includes a processor 114 and memory 116 that includescomputer-executable instructions that are executed by the processor 114.In an example, the processor 114 can be or include a graphics processingunit (GPU), a plurality of GPUs, a central processing unit (CPU), aplurality of CPUs, an application-specific integrated circuit (ASIC), amicrocontroller, a programmable logic controller (PLC), a fieldprogrammable gate array (FPGA), or the like.

The memory 116 comprises an object recognition system 118 that isconfigured to assign labels to objects (in proximity to the autonomousvehicle 102) captured in sensor signals output by the sensor systems 104a-n.

The memory 118 additionally includes a control system 120 that isconfigured to receive output of the object recognition system 118 toadjust a route received from an administration system 122 and is furtherconfigured to control at least one of the mechanical systems (thevehicle propulsion system 106, the brake system 108, and/or the steeringsystem 110) based upon the output of the object recognition system 118.

The autonomous vehicle 102 includes a human-machine interface (HMI) 124to provide information and to receive certain user inputs. For example,the administration system 122 can relay via a network 126 an opportunityas a proposed social rerouting affordance 128 for a ride share to afirst person 130 that is a passenger of the autonomous vehicle 102. Inone embodiment, the administration system 122 detects the opportunityand causes the opportunity to be presented to a second person 132 via auser interface device 134. The opportunity can be presented as asocialized navigation map 136 that is relevant to both first and secondpersons 130, 132. For example, both persons 130, 132 can be associatedas being friends, co-workers, or members of the same club ororganization. The socialized navigation map 136 can be annotated withcurrent locations 138-140 of members of the group. One of theseindications can include the current location 138 of the first person 130in the autonomous vehicle 102 going to a destination, such as a socialvenue or store 142, a residence 144 or an employment site 146.

In one or more embodiments, the administration system 122 provides asocial networking service as well as provides a taxi service using afleet of autonomous vehicles 102. The administration system 122maintains a custom group and user maps database 148 that containsflagged or detected locations. A user association mapping data structure150 can contain associations and sharing permissions for a population ofusers of trusted or affiliated persons. A user current and historicallocation tracking data structure 152 can include locations designated ofinterest to particular users and groups of users, and historicallyfrequented sites by the particular users and groups of users. A socialopportunity detector agent 154 can utilize a rule-based or inferentialengine to analyze the current data and associations to identifyopportunities. Whether a socialized route or a direct point-to-pointroute, a time/distance route optimizer 156 can optimize routes sent toautonomous vehicles 102. Based on the time and distance and the numberof passengers, a socialized fare arbiter 158 can facilitate settingfixed or negotiable rates that are affected by time, distance, number ofpassengers, and current supply and demand for taxi services.

Turning now to FIG. 2, there is depicted a block diagram representationof an exemplary electronic device, and specifically user interfacedevice 200, within which several of the features of the disclosure canbe implemented. User interface device 200 is an exemplary implementationof user interface device 134 (FIG. 1). In an exemplary aspect, userinterface device 200 includes the hardware and software to supportvarious wireless or wired communication functions as part of acommunication system 202. Referring now to the specific component makeupand the associated functionality of the presented components, processorsubsystem 204 can be an integrated circuit (IC) that connects, via aplurality of bus interconnects 206, to a plurality of functionalcomponents 208 of user interface device 200. Processor subsystem 204 caninclude one or more programmable microprocessors, such as data processor210 and digital signal processor (DSP) 212, which may both be integratedinto a single processing device, in some embodiments. Processorsubsystem 204 controls the communication, user interface, and otherfunctions and/or operations of user interface device 200. Thesefunctions and/or operations thus include, but are not limited to,application data processing and signal processing. The user interfacedevice 200 may use hardware component equivalents such as specialpurpose hardware, dedicated processors, general purpose computers,microprocessor-based computers, micro-controllers, optical computers,analog computers, dedicated processors and/or dedicated hard wiredlogic. Connected to processor subsystem 204 is memory 214, which caninclude volatile memory and/or non-volatile memory. Memory 214 storessoftware, such as operating system 216, as well as firmware 218. One ormore other executable applications 220 can be stored within memory 214for execution by processor subsystem 204. Memory 214 may be augmented byon-device data storage 222. Memory 214 can be further augmented byremovable storage device (RSD) input/output (I/O) interface 224 thatreceives an RSD 226.

According to the illustrative embodiment, user interface device 200supports wireless communication via a communication module 228 thattransceives via a multi-band antenna system 229. For example, userinterface device 200 may support communication protocols and transceiverradio frequencies appropriate for a wireless local area network (WLAN),represented by a node 230. The user interface device 200 can communicateover a personal access network (PAN) with devices such as a smart watch232. The user interface device 200 can communicate with a radio accessnetwork (RAN) 234 that is part of a wireless wide area network (WWAN).In certain embodiments, user interface device 200 may also support ahardwired local access network (LAN) or peripheral devices via aninput/output (I/O) controller 236. One or more of these networks, suchas global positioning system (GPS) 237 can utilize or provide locationservices that communication with a location service component 238 of theuser interface device 200.

User interface device 200 includes input and output devices. Forexample, microphone 239 receives user audible inputs. User interfacedevice 240 can present visual or tactile outputs as well as receive userinputs. In one example, user interface device 240 can include a touchscreen that is embedded within or associated with a display. An audiospeaker 242 can augment or provide alternate presentation of the visualor tactile outputs of user interface device 240. A tactile control 244can provide an interface such as for braille reading or manual inputs.An image capturing device 246 can receive gestures, facial features, andother image data. Additionally, while illustrated as a single system, itis to be understood that the user interface device 200 may be adistributed system, such as being at least a portion of the autonomousvehicle system 100 (FIG. 1). In one or more embodiments, user interfacedevice 200 enables a range of informational, entertainment, andcommunication functions and personal productivity tools. A ride shareagent 248 executed by user interface device 200 can data mine current orpast activities triggered by a user of the user interface device 200 toidentify the likelihood that a proposed ride share would be receivedfavorably. For example, a user can have a pattern of visiting an area ofa city that has a significant number of dining and social destinationson Friday and Saturday nights with one or more people that the user hasidentified as a social group of friends. Ride share agent 248 caninitiate presentation of a socialized navigation map that is sized toinclude this area of town in response to the date and time and inresponse to associated people travelling to this area of town.

FIG. 3 is a front view of an example user interface 300 of a userinterface device 302 presenting an affordance 304 to initiate or agreeto a ride share for a “person 2”. User interface device 302 is anexample application for user interface device 134 (FIG. 1) and userinterface device 200 (FIG. 2). The affordance 304 provides anassociation indicator 306 for person 2, a communication and locationsharing status 308, a temporal location sharing control 310, anddesignation 312 of the ride share opportunity. A route & proposed newroute 314 to a destination 316 are presented on a proposed rerouting map318. User input controls 320-322 respectively allow requesting orapproving a ride share, dismissing the affordance, and opening acommunication session with person 2. In one or more embodiments, a fareis calculated for each person, including information as to the changethat would occur if the affordance of a ride share is accepted. Fareinformation 324 is displayed.

FIG. 4 is a top diagrammatic view illustrating an exemplary ride sharescenario 400 that includes backtracking 402 by an autonomous vehicle 404carrying a first person A 406 to include a second person B 408 at asecond location 410. The autonomous vehicle 406 carrying the firstperson A 406 is shown to be at a first location. A first point-to-pointroute 412 is adjusted to a second route 414 for ride sharing to adestination 416 in response to the adjustment being within a proximitythreshold 418 (e.g., the second location 410 at which the second personB 408 is located being within the proximity threshold 418). Theproximity threshold 418 can be adjustable or dynamic. For example, apassenger can have an arrival deadline that constrains any excursionsfrom the first point-to-point route 412. The threshold can be distancebased or time based or both. The shared portion 420 of the second route414 can then be optimized for time and distance.

For clarity, FIG. 4 illustrates an autonomous system controller 422 thatcommunicates with: (i) autonomous vehicle 406; (ii) a first userinterface device 424 either portably carried by first person A 406 or anHMI mounted in autonomous vehicle 406; and (iii) a second user interfacedevice 426 portably carried by second person B 408. In one embodiment,autonomous system controller 422 is an implementation of administrationsystem 122 (FIG. 1), performing fleet routing of more than oneautonomous vehicles 406. A server-based information handling system(IHS) can execute an autonomous system controller 422 that is incommunication with a population of autonomous vehicles 406 and apopulation of user interface devices 424, 426.

In one embodiment, autonomous system controller 422 is an implementationof computing system 112 of autonomous vehicle 102 of FIG. 1, performingrouting in response to peer-to-peer interactions with potential andcurrent passengers. Autonomous vehicle 406 can perform routing solelyfor the benefit of first person A 406. Second person B 408 can interactwith an onboard controller 428 of autonomous vehicle 406 via second userinterface device 426. In one embodiment, autonomous system controller422 is an implementation of a distributed system having certainfunctions performed at a fleet level, other functions performed at anindividual vehicle level, and other interface functions performed inuser interface devices.

FIG. 5 is a top diagrammatic view illustrating a ride share scenario 500that includes associating co-workers 502, 504 in advance of performing awork carpool. A first route 506 takes the first co-worker 504 from acoworker A house 508 to a work location 510. The autonomous vehicle 512can be redirected to a co-worker B house 514 to include co-worker 504 ina ride share to the work location 510 along a second route 516, in thisinstance without a distance penalty.

FIG. 6 is a top diagrammatic view illustrating a ride share scenario 600that includes associating identified friends or social group members toafford an opportunity to reroute for a ride share. A first person “A”602 is riding in an autonomous vehicle 604 to a destination such as asocial location X 606. This destination could be selected based onseeing that another person “C” 608 is already at the social location X606. A second person “B” 610 at a second location 611 can note thisactivity on a friend dynamic map 612 and utilize an autonomous vehiclesystem to request a ride share from the first person “A” 602. Enroute,first person A 602 and second person B 610 can note a flagged sociallocation Y 614 that someone in the friend group has tagged as being agood destination. The autonomous vehicle system is utilized to rerouteautonomous vehicle 604 to include the other person 608 in a ride shareto flagged social location Y 614.

In one or more embodiment, an autonomous system controller 422 of FIG. 4identifies an opportunity for proposing a ride share based on secondperson B 610 being merely associated with first person A 602 and maywant to ride along in autonomous vehicle 604. For another example,association with a destination may be based on an associated person,such as the other person C 608 already being at the destination. For anadditional example, the second person B 610 can be individuallyassociated with the flagged social location Y 614. This location isproximate to a destination selected by the first person A 602, whichindirectly associates with the second person B 610 as being convenientlyon the way to a preferred destination.

FIGS. 7A-7B illustrate an exemplary methodology relating to controllinga ride share provide by an autonomous vehicle. While the methodology isshown and described as being a series of acts that are performed in asequence, it is to be understood and appreciated that the methodology isnot limited by the order of the sequence. For example, some acts canoccur in a different order than what is described herein. In addition,an act can occur concurrently with another act. Further, in someinstances, not all acts may be required to implement a methodologydescribed herein.

Moreover, the acts described herein may be computer-executableinstructions that can be implemented by one or more processors and/orstored on a computer-readable medium or media. The computer-executableinstructions can include a routine, a sub-routine, programs, a thread ofexecution, and/or the like. Still further, results of acts of themethodologies can be stored in a computer-readable medium, displayed ona display device, and/or the like.

FIGS. 7A-B depicts a flow diagram illustrating a method 700 forautomatically facilitating a ride share by an autonomous vehicle. In oneor more embodiments, method 700 begins generating, by an autonomoussystem controller, a first route for an autonomous vehicle to transporta first person from a first location to a destination (block 702).Method 700 includes determining a first passenger fare based ontransporting a passenger from the first location to the destination(block 704). Method 700 includes determining that respective usersettings permit sharing information at least temporarily of userlocation and the destination between the first and second persons(decision block 706). In response to determining that user settings donot permit sharing information, method 700 includes directing theautonomous vehicle to perform the first route (block 708). In one ormore embodiments, in response to a group selection trigger event, method700 includes causing presentation of a second map that corresponds to asecond group of persons that is not an identical with the first group tofind another option for ride sharing (block 710). Then method 700 ends.

In response to determining that user settings permit sharing informationin decision block 706, a further determination is made as to determiningwhether a second person satisfies trigger criteria comprising: (i) beingat a second location that is within a proximity threshold to the firstroute; (ii) being associated with the first person; and (iii) beingassociated with the destination (decision block 712). A destination canbe associated with both persons due to a shared historical visitation tothe location, a user selection of the destination as recommended by atrusted person within the group, or the destination is along the way toanother destination that is preferred by the particular person.

In one or more embodiments, the determination is made based on at leastone of an association between the first and second persons based on atleast one of: (i) a common employer email domain; (ii) commonorganizational membership; and (iii) user identified friends. Inresponse to determining that the trigger criteria are not satisfied indecision block 712, method 700 returns to block 708 to continuedirecting the autonomous vehicle to perform the first route. In responseto determining that the trigger criteria are satisfied in decision block712, method 700 includes determining a second passenger fare based ontransporting a passenger from the second location to the destination(block 714). Method 700 includes determining a joint passenger farebased on performing the second route that is less than the combinedamount of the first and second passenger fares (block 716). Method 700includes causing presentation of a first map that corresponds to a firstgroup of persons and that is annotated with one or more of: (i) acurrent location of any person associated with the first group; (ii) atagged destination of interest designation by any person associated withthe first group; and (iii) a frequented destination of interestdetermined based on historical visitations by any person associated withthe first group (block 718). Method 700 includes causing presentation ofan affordance via a respective user interface device to at least one ofthe first and second persons that proposes that the autonomous vehicletransport both the first and second persons to the destination (block720). Method 700 includes causing presentation of the joint passengerfare as part of the affordance to the at least one of the first andsecond persons to create an incentive for acceptance of the affordance(block 722). A determination is made as to whether the affordance isaccepted by at least one of the first and second persons (decision block724). In an exemplary embodiment, agreement is required by both parties.In response to determining that the affordance is not accepted by atleast one of the first and second persons, method 700 returns to block708 to direct the autonomous vehicle to perform the first route.

In response to receiving acceptance of the affordance from the at leastone of the first and second persons via the respective user interfacedevice, method 700 includes generating a second route for the autonomousvehicle that comprises picking up the first person at the firstlocation, picking up the second person at the second location, andtransporting both the first and second persons to the destination (block726). Method 700 includes directing the autonomous vehicle to travelaccording to the second route (block 728). Then method 700 ends.

For clarity, a single destination for both of the first and secondpersons is described. In one or more embodiments, the method 700includes associating two or more candidates for a ride share wherein thecandidates originate at one or more locations and wherein the candidatesare designated to go to one or more destinations with a sharedtransportation path during at least a portion of the second route.

In one or more embodiments, an autonomous vehicle system can determinethat a population of autonomous vehicles is insufficient to servicecurrent demand of passengers. Ride sharing can be made a mandatoryfeature of the service. For example, an employer may contract with anautonomous vehicle service to assist employees in obtainingtransportation to and from work. The autonomous vehicle system can lookfor rerouting opportunities to maximize delivery of employees at theappropriate start and end times.

In one or more embodiments, an autonomous vehicle system can enablecandidates to identify social opportunities to share experiences withfriends, club members, etc. Opportunities for a person to go to adestination with an associated person can be presented to either or bothpersons with any subsequent ride share requiring mutual acceptance. Inone or more embodiments, the persons perform a person-to-personcommunication session as part of making an informed decision to accept aride share. The communication session can be facilitated by theautonomous vehicle system. In other embodiments, each person interactsonly with the autonomous vehicle system in viewing and accepting theride share opportunity.

Referring now to FIG. 8, a high-level illustration of an exemplarycomputing device 800 that can be used in accordance with the systems andmethodologies disclosed herein is illustrated. For instance, thecomputing device 800 may be or include the computing system 112 of theautonomous vehicle 102. According to another example, the administrationsystem 122 of FIG. 1 can be or include the computing device 800.Pursuant to a further example, computing device 800 can be or includethe user interface device 134, the user interface device 200, or theuser interface device 302. The computing device 800 includes at leastone processor 802 (e.g., the processor 114, the processor subsystem 204)that executes instructions that are stored in a memory 804 (e.g., thememory 116, the memory 214). The instructions may be, for instance,instructions for implementing functionality described as being carriedout by one or more systems discussed above or instructions forimplementing one or more of the methods described above. The processor802 may be a GPU, a plurality of GPUs, a CPU, a plurality of CPUs, amulti-core processor, etc. The processor 802 may access the memory 804by way of a system bus 806.

The computing device 800 additionally includes a data store 808 that isaccessible by the processor 802 by way of the system bus 806. Thecomputing device 800 also includes an input interface 810 that allowsexternal devices to communicate with the computing device 800. Forinstance, the input interface 810 may be used to receive instructionsfrom an external computer device, etc. The computing device 800 alsoincludes an output interface 812 that interfaces the computing device800 with one or more external devices. For example, the computing device800 may transmit control signals to the vehicle propulsion system 106,the braking system 108, and/or the steering system 110 by way of theoutput interface 812.

Additionally, while illustrated as a single system, it is to beunderstood that the computing device 800 may be a distributed system.Thus, for instance, several devices may be in communication by way of anetwork connection and may collectively perform tasks described as beingperformed by the computing device 800.

Various functions described herein can be implemented in hardware,software, or any combination thereof. If implemented in software, thefunctions can be stored on or transmitted over as one or moreinstructions or code on a computer-readable medium. Computer-readablemedia includes computer-readable storage media. A computer-readablestorage media can be any available storage media that can be accessed bya computer. By way of example, and not limitation, suchcomputer-readable storage media can comprise RAM, ROM, EEPROM, CD-ROM orother optical disk storage, magnetic disk storage or other magneticstorage devices, or any other medium that can be used to store desiredprogram code in the form of instructions or data structures and that canbe accessed by a computer. Disk and disc, as used herein, includecompact disc (CD), laser disc, optical disc, digital versatile disc(DVD), floppy disk, and Blu-ray disc (BD), where disks usually reproducedata magnetically and discs usually reproduce data optically withlasers. Further, a propagated signal is not included within the scope ofcomputer-readable storage media. Computer-readable media also includescommunication media including any medium that facilitates transfer of acomputer program from one place to another. A connection, for instance,can be a communication medium. For example, if the software istransmitted from a website, server, or other remote source using acoaxial cable, fiber optic cable, twisted pair, digital subscriber line(DSL), or wireless technologies such as infrared, radio, and microwave,then the coaxial cable, fiber optic cable, twisted pair, DSL, orwireless technologies such as infrared, radio and microwave are includedin the definition of communication medium. Combinations of the aboveshould also be included within the scope of computer-readable media.

Alternatively, or in addition, the functionality described herein can beperformed, at least in part, by one or more hardware logic components.For example, and without limitation, illustrative types of hardwarelogic components that can be used include Field-programmable Gate Arrays(FPGAs), Program-specific Integrated Circuits (ASICs), Program-specificStandard Products (ASSPs), System-on-a-chip systems (SOCs), ComplexProgrammable Logic Devices (CPLDs), etc.

What has been described above includes examples of one or moreembodiments. It is, of course, not possible to describe everyconceivable modification and alteration of the above devices ormethodologies for purposes of describing the aforementioned aspects, butone of ordinary skill in the art can recognize that many furthermodifications and permutations of various aspects are possible.Accordingly, the described aspects are intended to embrace all suchalterations, modifications, and variations that fall within the spiritand scope of the appended claims. Furthermore, to the extent that theterm “includes” is used in either the detailed description or theclaims, such term is intended to be inclusive in a manner similar to theterm “comprising” as “comprising” is interpreted when employed as atransitional word in a claim.

What is claimed is:
 1. A method comprising: generating a first route foran autonomous vehicle to transport a first person from a first locationto a destination; causing the autonomous vehicle to pick up the firstperson at the first location and transport the first person along thefirst route towards the destination; determining that a second personsatisfies trigger criteria, the trigger criteria comprising: the secondperson being at a second location that is within a proximity thresholdto the first route; and the second person being associated with thefirst person; while the autonomous vehicle transports the first personalong the first route and in response to determining that the triggercriteria are satisfied by the second person, causing an affordance to bepresented via a user interface device to the second person that proposesthat the autonomous vehicle transport both the first and second personsto the destination; in response at least in part to receiving acceptanceof the affordance from the second person via the user interface device,generating a second route for the autonomous vehicle to transport boththe first and second persons to the destination; and causing theautonomous vehicle to change from following the first route to followingthe second route towards the destination such that the autonomousvehicle is caused to pick up the second person at the second locationand transport both the first and second persons from the second locationalong the second route towards the destination.
 2. The method of claim1, further comprising: determining a first passenger fare based ontransporting a passenger from the first location to the destination;determining a second passenger fare based on transporting a passengerfrom the second location to the destination; determining a jointpassenger fare based on performing the second route, the joint passengerfare being less than a combined amount of the first and second passengerfares; and causing the joint passenger fare to be presented as part ofthe affordance to the second person.
 3. The method of claim 1, furthercomprising: determining that sharing of information specifying a userlocation and the destination is permitted between the first and secondpersons by way of affordances presented via respective user interfacedevices; wherein whether the second person satisfies the triggercriteria is determined in response to determining that the sharing ofthe information is permitted.
 4. The method of claim 1, furthercomprising determining an association between the first and secondpersons based on at least one of: (i) a common employer email domain;(ii) common organizational membership; or (iii) user identified friends.5. The method of claim 1, wherein causing the affordance to be presentedcomprises causing presentation of a first map via the user interfacedevice, the first map corresponds to a first group of persons and isannotated with one or more of: (i) a current location of any personassociated with the first group; (ii) a tagged destination of interestdesignation by any person associated with the first group; or (iii) afrequented destination of interest determined based on historicalvisitations by any person associated with the first group.
 6. The methodof claim 5, further comprising, in response to a group selection triggerevent, causing presentation of a second map via the user interfacedevice, the second map corresponds to a second group of persons that isnot identical with the first group.
 7. The method of claim 5, whereinannotating the first map with the current location of a particularperson associated with the first group is in response to determiningwhether the particular person has temporally enabled location sharing.8. The method of claim 1, wherein the autonomous vehicle is furthercaused to drop off the second person at a location that differs from andis proximate to a location at which the first person is dropped off. 9.The method of claim 1, further comprising: while the autonomous vehicletransports the first person along the first route and in response todetermining that the trigger criteria are satisfied by the secondperson, causing a second affordance to be presented via a differing userinterface device to the first person that proposes that the autonomousvehicle transport both the first and the second persons to thedestination; wherein the second route for the autonomous vehicle isfurther generated in response to receiving acceptance of the secondaffordance from the first person via the differing user interfacedevice.
 10. An autonomous system controller comprising: a communicationinterface that is communication with an autonomous vehicle, a first userinterface device that is used by a first person, and a second userinterface device that is used by a second person; at least oneprocessor; and memory that comprises computer-executable instructionsthat, when executed by the at least one processor, cause the at leastone processor to perform acts comprising: generating a first route forthe autonomous vehicle to transport the first person from a firstlocation to a destination; causing the autonomous vehicle to transportthe first person along the first route from the first location towardsthe destination; determining that the second person satisfies triggercriteria, the trigger criteria comprising: the second person being at asecond location that is within a proximity threshold to the first route;and the second person being associated with the first person; while theautonomous vehicle transports the first person along the first route andin response to determining that the trigger criteria are satisfied bythe second person, causing an affordance to be presented via the firstuser interface device to the first person that proposes that theautonomous vehicle transport both the first and second persons to thedestination; in response at least in part to receiving acceptance of theaffordance from the first person via the first user interface device,generating a second route for the autonomous vehicle to transport boththe first and second persons to the destination; and causing theautonomous vehicle to change from following the first route to followingthe second route towards the destination such that the autonomousvehicle is caused to pick up the second person at the second locationand transport both the first and second persons from the second locationalong the second route towards the destination.
 11. The autonomoussystem controller of claim 10, the acts further comprising: determininga first passenger fare based on transporting a passenger from the firstlocation to the destination; determining a second passenger fare basedon transporting a passenger from the second location to the destination;determining a joint passenger fare based on performing the second route,the joint passenger fare being less than a combined amount of the firstand second passenger fares; and causing the joint passenger fare to bepresented as part of the affordance to the first person.
 12. Theautonomous system controller of claim 10, the acts further comprising:determining that sharing of information specifying a user location andthe destination is permitted between the first and second persons by wayof affordances presented via the first user interface device and thesecond user interface device; wherein whether the second personsatisfies the trigger criteria is determined in response to determiningthat the sharing of the information is permitted.
 13. The autonomoussystem controller of claim 10, the acts further comprising: determiningan association between the first and second persons based on at leastone of: (i) a common employer email domain; (ii) common organizationalmembership; or (iii) user identified friends.
 14. The autonomous systemcontroller of claim 10, wherein causing the affordance to be presentedfurther comprises causing presentation of a first map via the first userinterface device, the first map corresponds to a first group of personsand is annotated with one or more of: (i) a current location of anyperson associated with the first group; (ii) a tagged destination ofinterest designation by any person associated with the first group; or(iii) a frequented destination of interest determined based onhistorical visitations by any person associated with the first group.15. The autonomous system controller of claim 14, the acts furthercomprising: in response to a group selection trigger event, presenting asecond map via the first user interface device, the second mapcorresponds to a second group of persons that is not identical with thefirst group.
 16. The autonomous system controller of claim 14, whereinthe first map is annotated with the current location of a particularperson associated with the first group in response to determiningwhether the particular person has temporally enabled location sharing.17. The autonomous system controller of claim 10, wherein the autonomousvehicle comprises the first user interface device that is used by thefirst person to receive the affordance when being transported on thefirst route.
 18. The autonomous system controller of claim 10, whereinthe autonomous vehicle is further caused to drop off the second personat a location that differs from and is proximate to a location at whichthe first person is dropped off.
 19. The autonomous system controller ofclaim 10, the acts further comprising: while the autonomous vehicletransports the first person along the first route and in response todetermining that the trigger criteria are satisfied by the secondperson, causing a second affordance to be presented via the second userinterface device to the second person that proposes that the autonomousvehicle transport both the first and the second persons to thedestination; wherein the second route for the autonomous vehicle isfurther generated in response to receiving acceptance of the secondaffordance from the second person via the second user interface device.20. A computer system comprising: at least one processor; and memorythat comprises computer-executable instructions that, when executed bythe at least one processor, cause the at least one processor to performacts comprising: generating a first route for an autonomous vehicle totransport a first person from a first location to a destination; causingthe autonomous vehicle to transport the first person along the firstroute from the first location towards the destination; determining thata second person satisfies trigger criteria, the trigger criteriacomprising: the second person being at a second location that is withina proximity threshold to the first route; the second person beingassociated with the first person; and the second person being associatedwith the destination; while the autonomous vehicle transports the firstperson along the first route and in response to determining that thetrigger criteria are satisfied by the second person; causing a firstaffordance to be presented via a first user interface device to thefirst person that proposes that the autonomous vehicle transport boththe first and second persons to the destination; and causing a secondaffordance to be presented via a second user interface device to thesecond person that proposes that the autonomous vehicle transport boththe first and second persons to the destination; in response toreceiving acceptance of the first affordance from the first person viathe first user interface device and acceptance of the second affordancefrom the second persons via the second user interface device, generatinga second route for the autonomous vehicle to transport both the firstand second persons to the destination; and causing the autonomousvehicle to change from following the first route to following the secondroute towards the destination such that the autonomous vehicle is causedto pick up the second person at the second location and transport boththe first and second persons from the second location along the secondroute towards the destination.